/* 简答题 */
/*
  1、谈谈你对工程化的初步认识，结合你之前遇到过的问题说出三个以上工程化能够解决问题或者带来的价值。
*/
// ----------------------------------------
/*
  工程化是为了以提高开发效率、降低成本和质量保证为目的而进行的一系列工作，不过更主要的是以一种指导思想而存在，使的开发人员能够有意识的去使用自动化工具提高工作效率，减少不必要的重复工作。
*/
/**
 * - 使用特定工具可实现自动编译，使得开发人员可以不用考虑多过兼容性问题下使用较新版本语言，例如 sass转css，es6转es5 等等
 * - 代码热更新，提高了开发效率，不必每次都去重新build项目
 * - 代码自动混淆、压缩，减少一定部署成本
 * - 自动格式化代码及语法检查ESLint，统一协同开发代码风格不统一问题
 */

/*
  2、你认为脚手架除了为我们创建项目结构，还有什么更深的意义？
*/
// ----------------------------------------
/*
  为项目建立起一定的规范和约定，例如组件、页面文件、js文件、css文件等命名规范，为项目后期可读性、可维护可拓展性提供一定的保证，也为新开发成员提供一系列的可参考文件。
*/

/* 编程题 */
/*
  1、概述脚手架实现的过程，并使用 NodeJS 完成一个自定义的小型脚手架工具
*/
// ----------------------------------------
/*
  使用fs提供的文件读取和写入流方法将读取的模版文件插入到目标文件，中间可通过一系列的文件转换工具对文件流进行修改。
*/
// 详见 cli.js
// https://gitee.com/TatazZ2016/learning-notes-lagou-fe/blob/master/cli.js

/*
  2、尝试使用 Gulp 完成项目的自动化构建
*/
// ----------------------------------------
// 详见 gulpfile.js
// https://gitee.com/TatazZ2016/learning-notes-lagou-fe/blob/master/gulpfile.js
